home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 98 / Skunkware 98.iso / html / util / genskunk.01 < prev    next >
Text File  |  1997-08-11  |  5KB  |  175 lines

  1. #! /bin/sh
  2.  
  3. PROGRAM=genskunk
  4.  
  5. # Usage: gencd file name prev next
  6.  
  7. if [ $# -ne 5 ]; then
  8.   echo "Usage: $PROGRAM [web | cd ] file name prev next"
  9.   echo "  file     - the name of the .tmpl file without the .tmpl extension"
  10.   echo "  name     - the name of the package for file names"
  11.   echo "  prev     - the location of the previous link"
  12.   echo "  next     - the location of the next link"
  13.   echo "  Use the word NONE for the next and prev elements if there are none"
  14.   exit 1
  15. fi
  16.  
  17. MODE=unknown
  18. NOW=`date -u +"%c (GMT)"`
  19.  
  20. if [ "$1" = "web" ]; then
  21.   MODE=SKUNK_WEB
  22. fi
  23.  
  24. if [ "$1" = "cd" ]; then 
  25.   MODE=SKUNK_CD
  26. fi
  27.  
  28. if [ "$MODE" = "unknown" ]; then
  29.   echo "$PROGRAM error: first argument must be one of either 'web' or 'cd'"
  30.   exit 1
  31. fi
  32. shift
  33.  
  34. BASEFILE=$1
  35. SHORTNAME=$2
  36. PREVIOUS=$3
  37. NEXT=$4
  38.  
  39. REALBASE=`basename $BASEFILE`
  40. OUTPUT=${REALBASE}.html
  41.  
  42. if [ ! -f ${1}.tmpl ]; then
  43.   echo "$PROGRAM error: ${1}.tmpl not found"
  44.   exit 1
  45. fi
  46.  
  47. if [ "$MODE" = "SKUNK_CD" ]; then
  48.   if [ "$PREVIOUS" = "NONE" ]; then
  49.     PREVREF=
  50.   else
  51.     PREVREF="<AREA SHAPE=\"rect\" COORDS=\"112,2,236,26\" HREF=\"${PREVIOUS}.html\">"
  52.   fi
  53.  
  54.   if [ "$NEXT" = "NONE" ]; then
  55.     NEXTREF=
  56.   else
  57.     NEXTREF="<AREA SHAPE=\"rect\" COORDS=\"252,1,331,26\" HREF=\"${NEXT}.html\">"
  58.   fi
  59.  
  60. HEADERSED="s^@@@SKUNKHEADER(\(.*\))\\<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">\\
  61. <HTML>\\
  62. <HEAD>\\
  63.   <TITLE>\\1</TITLE>\\
  64.   <LINK REV=\"made\" HREF=\"mailto:jkj@sco.com\">\\
  65. </HEAD>\\
  66. <BODY BGCOLOR=\"#ffffff\">\\
  67. \\
  68. <MAP NAME=\"skunknav\">\\
  69.   <AREA SHAPE=\"rect\" COORDS=\"347,1,460,26\" HREF=\"http://www.sco.com/skunkware/${SHORTNAME}\">\\
  70.   ${PREVREF}\\
  71.   ${NEXTREF}\\
  72.   <AREA SHAPE=\"rect\" COORDS=\"3,1,93,26\" HREF=\"index.html\">\\
  73. </MAP>\\
  74. \\
  75. <TABLE CELLSPACING=\"0\" CELLPADDING=\"0\" WIDTH=\"100%\" BORDER=\"0\">\\
  76.   <TR ALIGN=\"LEFT\" VALIGN=\"TOP\">\\
  77.     <TD ROWSPAN=\"2\" WIDTH=\"20%\">\\
  78.       <IMG SRC=\"gif\/sk97s.gif\" HEIGHT=\"104\" WIDTH=\"108\" ALIGN=\"BOTTOM\">\\
  79.     </TD>\\
  80.     <TD VALIGN=\"BOTTOM\" WIDTH=\"79%\">\\
  81.       <IMG ISMAP USEMAP=\"#skunknav\" SRC=\"gif\/skunknav.gif\" HEIGHT=\"26\" WIDTH=\"466\"\\
  82.             ALIGN=\"BOTTOM\" BORDER=\"0\">\\
  83.     </TD>\\
  84.   </TR>\\
  85.   <TR>\\
  86.     <TD VALIGN=\"TOP\">\\
  87.       <IMG SRC=\"gif\/${SHORTNAME}.gif\" HEIGHT=\"26\" ALIGN=\"BOTTOM\">\\
  88.     </TD>\\
  89.   </TR>\\
  90. </TABLE>\\
  91. \\
  92. <H2 ALIGN=\"CENTER\">Last Updated: ${NOW}</H2>\\
  93. "
  94. fi
  95.  
  96. PACKLISTSED="s^@@@PACKLIST(\(.*\);\(.*\);\(.*\);\(.*\);\(.*\))\\<TR>\\
  97.   <TD><A HREF=\"#\\1\">\\1</A></TD>\\
  98.   <TD>\\2</TD>\\
  99.   <TD>\\3</TD>\\
  100.   <TD ALIGN=\"CENTER\">\\4</TD>\\
  101.   <TD ALIGN=\"CENTER\">\\5</TD>\\
  102. </TR>\\
  103. "
  104.  
  105. STARTPACKLISTSED="s^@@@START_PACKAGELIST\\<H2 ALIGN=\"CENTER\">Package List</H2>\\
  106. \\
  107. <CENTER><TABLE WIDTH=\"100%\" BORDER=\"1\" CELLSPACING=\"0\" CELLPADDING=\"2\">\\
  108.   <TR>\\
  109.     <TH WIDTH=\"11%\" HEIGHT=\"23\">\ Name</TH>\\
  110.     <TH WIDTH=\"62%\">Description</TH>\\
  111.     <TH WIDTH=\"9%\">Version</TH>\\
  112.     <TH WIDTH=\"7%\">OSR5</TH>\\
  113.     <TH WIDTH=\"11%\">UnixWare</TH>\\
  114.   </TR>\\
  115. "
  116.  
  117. ENDPACKLISTSED="s^@@@END_PACKAGELIST\\</TABLE></CENTER>\\
  118. <H4><HR ALIGN=\"LEFT\"></H4>"
  119.  
  120. STARTPACKSED="s^@@@STARTPACK(\(.*\);\(.*\))\\<H4><A NAME=\"\\1\"></A>\\2</H4>\\
  121. \\
  122. <BLOCKQUOTE>\\
  123. "
  124.  
  125. ENDPACKSED="s^@@@ENDPACK\\</BLOCKQUOTE>\\
  126. <P>\ </P>\\
  127. "
  128.  
  129. FOOTERSED="s^@@@SKUNKFOOTER\\<P><HR ALIGN=LEFT>\\
  130. <P>\ <FONT SIZE=-2>\© Copyright 1997 The Santa Cruz Operation, Inc.\\
  131. All rights reserved.</FONT>\\
  132. </BODY>\\
  133. </HTML>\\
  134. \\
  135. "
  136.  
  137. OSR5DISTSED="s^@@@OSR5DIST(\(.*\))<P><A HREF=\"\\1\">\\
  138.   <IMG SRC=\"gif\/osr5dist.gif\" HSPACE=\"20\" BORDER=\"0\" HEIGHT=\"32\" WIDTH=\"160\"\\
  139.   ALIGN=\"CENTER\" ALT=\"OpenServer Distribution\">\\
  140. \\1\\
  141. </A></P>\\
  142. "
  143.  
  144. UW2DISTSED="s^@@@UW2DIST(\(.*\))<P><A HREF=\"\\1\">\\
  145.   <IMG SRC=\"gif\/uw2dist.gif\" HSPACE=\"20\" BORDER=\"0\" HEIGHT=\"32\" WIDTH=\"160\"\\
  146.   ALIGN=\"CENTER\" ALT=\"UnixWare Distribution\">\\
  147. \\1\\
  148. </A></P>\\
  149. "
  150.  
  151. SOURCESED="s^@@@SOURCE(\(.*\))<P>\\
  152. <A HREF=\"\\1\">\\
  153.   <IMG SRC=\"gif\/origsrc.gif\" ALT=\"Original source code\" HSPACE=\"20\" BORDER=\"0\"\\
  154.             HEIGHT=\"32\" WIDTH=\"160\" ALIGN=\"CENTER\"></A>\\
  155. <A HREF=\"\\1\">\\1</A></P>\\
  156. "
  157.  
  158. HOMEPAGESED="s^@@@HOMEPAGE(\(.*\))<P>\\
  159. <A HREF=\"\\1\">\\
  160.   <IMG SRC=\"gif\/homepage.gif\" ALT=\"Package Home page\" HSPACE=\"20\" BORDER=\"0\"\\
  161.             HEIGHT=\"32\" WIDTH=\"160\" ALIGN=\"CENTER\"></A>\\
  162. <A HREF=\"\\1\">\\1</A></P>\\
  163. "
  164.  
  165. if [ -f ${BASEFILE}.html ]; then
  166.   if [ ! -f ${BASEFILE}.html.bak ]; then
  167.     mv ${BASEFILE}.html ${BASEFILE}.html.bak
  168.   fi
  169. fi
  170.  
  171. rm -f ${OUTPUT}
  172.  
  173. cat ${1}.tmpl | /lib/cpp -I. -I.. -I../src -D${MODE} | sed -e "/^# [0-9]* \"/d" -e "$HEADERSED" -e "$PACKLISTSED" -e "$STARTPACKLISTSED" -e "$ENDPACKLISTSED" -e "$STARTPACKSED" -e "$ENDPACKSED" -e "$FOOTERSED" -e "$OSR5DISTSED" -e "$UW2DISTSED" -e "$SOURCESED" -e "$HOMEPAGESED" > ${OUTPUT}
  174. chmod 444 ${OUTPUT}
  175.